Don't do a lookup immediately after creating style->property_cache, since
authorOwen Taylor <otaylor@redhat.com>
Mon, 10 Sep 2001 10:54:43 +0000 (10:54 +0000)
committerOwen Taylor <otaylor@src.gnome.org>
Mon, 10 Sep 2001 10:54:43 +0000 (10:54 +0000)
Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>

* gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
do a lookup immediately after creating style->property_cache,
since bsearch crashes on zero length for Solaris.

ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkstyle.c

index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index fa272d508c087c135a5a606c1d309ea2d3cd11ca..4d4dc54b3ebc8c936eb47f8f9c6dc357086cc6c8 100644 (file)
@@ -1,3 +1,10 @@
+Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
+       do a lookup immediately after creating style->property_cache,
+       since bsearch crashes on zero length for Solaris.
+       (Found by Padraig O'Briain.)
+
 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
 
        * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
index 8461e4d4d3ff40f04e354531c6ba4480a9d89533..8c90bf89b65f7e00ade87845f93362f26a195256 100644 (file)
@@ -1303,15 +1303,16 @@ _gtk_style_peek_property_value (GtkStyle           *style,
   /* need value cache array */
   if (!style->property_cache)
     style->property_cache = g_array_new (FALSE, FALSE, sizeof (PropertyValue));
-
-  /* lookup, or insert value if not yet present */
-  key.widget_type = widget_type;
-  key.pspec = pspec;
-  pcache = bsearch (&key,
-                   style->property_cache->data, style->property_cache->len,
-                   sizeof (PropertyValue), style_property_values_cmp);
-  if (pcache)
-    return &pcache->value;
+  else
+    {
+      key.widget_type = widget_type;
+      key.pspec = pspec;
+      pcache = bsearch (&key,
+                       style->property_cache->data, style->property_cache->len,
+                       sizeof (PropertyValue), style_property_values_cmp);
+      if (pcache)
+       return &pcache->value;
+    }
 
   i = 0;
   while (i < style->property_cache->len &&